package lesson3;

//方法重载的概念
//what 方法名称相同，参数列表不一样(????类型，个数，顺序)
//where 当我们有一组相同的功能时，可以使用方法的重载
//how 自动根据参数名称匹配对应的方法
//why 可以提高代码的可读性
public class Demo1 {
    public static void main(String[] args) {
        int[] arr1 = {1,2,4,6,8,3,2};
        long[] arr2 = {1,4,72,78,32,1111111111111l};
        double[] arr3 = {1.1,2.2,3.4,5.6};
        byte[] arr4 = {1,2,3};

        //方法的调用
        //在方法调用时传入的参数为实参
        printArr(arr1);
        int age = 200;
        printAge(200);
        printArr(arr1);
        printArr(arr2);
        printArr(arr3);
        printArr(arr4);
//        printArrLong(arr2);
//        printArrDouble(arr3);
//        printArrByte(arr4);
    }

    //打印数组,形参列表
    //方法的声明
    static void printArr(int[] arr){
        for(int i = 0; i < arr.length; i++){
            System.out.print(arr[i]+"  ");
        }
    }

    static void printArr(int[] arr,int num){
        for(int i = 0; i < arr.length; i++){
            System.out.print(arr[i]+"  ");
        }
    }

//    static void printArr(int[] arr111,int num111){
//        for(int i = 0; i < arr.length; i++){
//            System.out.print(arr[i]+"  ");
//        }
//    }

    static void printArr(int num,int[] arr){
        for(int i = 0; i < arr.length; i++){
            System.out.print(arr[i]+"  ");
        }
    }



    static void printArr(long[] arr){
        for(int i = 0; i < arr.length; i++){
            System.out.print(arr[i]+"  ");
        }
    }

    static void printArr(double[] arr){
        for(int i = 0; i < arr.length; i++){
            System.out.print(arr[i]+"  ");
        }
    }

    static void printArr(byte[] arr){
        for(int i = 0; i < arr.length; i++){
            System.out.print(arr[i]+"  ");
        }
    }
//java中方法名称一样问题？？？



    static void printAge(int age){
        System.out.println("年龄:"+age);
    }
}
